import java.util.HashSet;
import java.util.Set;

/*
 * @lc app=leetcode.cn id=202 lang=java
 *
 * [202] 快乐数
 */

// @lc code=start
class Solution {
    public boolean isHappy(int n) {
        //题目提示了不是快乐数会循环
        Set<Integer> record=new HashSet<>();
        while(n!=1&&!record.contains(n)){
            record.add(n);
            int res=0;
            while(n>0){
                int value=n%10;
                res+=value*value;
                n=n/10;
            }
            n=res;
        }
        return n==1;
    }
}
// @lc code=end

